在开始准备考试前一定要阅读CNCF 官方考试大纲,了解 CKA 考察考生的主要内容,以在备考时做到知己知彼,有的放矢,根据该考试大纲进行针对性的准备和练习。该大纲会根据 K8s 的版本进行更新,但每个版本中涉及的考试内容变化不大,下面是我准备考试时的版本(v1.22)要求的主要内容:
25% - Cluster Architecture, Installation & Configuration15% - Workloads & Scheduling20% - Services & Networking10% - Storage30% - Troubleshooting熟悉考试的软件环境CKA 考试的软件环境如下,确保在考试前的练习中采用相同的软件环境,以提前熟悉考试环境:
操作系统:Ubuntu 18.04Shell:bash编辑器:vi命令行工具:kubectl jq tmux curl wget浏览器 chromeYouTube 上有一个 Linux 基金会录制的 CKA 考试环境的视频,大家可以看一下,对考试环境有一个基本的了解:https://www.youtube.com/watch?v=9UqkWcdy140
建议在准备考试时充分练习并熟悉下面的工具:
编辑器 vivi 是一个非常强大的编辑软件,命令也非常多,但我们不需要掌握所有的命令。了解如何在 vi 的编辑和命令模式之间切换,并熟悉在考试中会使用到的几个 vi 编辑器的常用命令即可,包括删除、剪切、拷贝、粘贴、上下翻页等。注意 vi 在粘贴 yaml 时的自动格式化处理可能会不正确。可以通过 :set paste 取消 vi 的自动格式化。常用的 vi 命令:
进入编辑模式 i进入命令模式 Esc储存后离开 vi :wq光标移动最后一行 G光标移动到第一行 gg光标移动到指定 nG (n为行数)vi 的使用方法和命令介绍参见这篇文章:https://www.runoob.com/linux/linux-vim.html
Josn/yaml 处理 jq在对 K8s crd 和 kubectl 命令行输出进行操作时需要对 Json/Yaml 代码片段进行操作,例如截取或者修改输出中某个特定的字段。考试环境中预装了 Json/Yaml 的命令行工具 jq。在练习时要熟悉该命令的使用方法,例如下面的命令可以获取 pod 中的镜像名称:
$ k get pod busybox -ojson|jq '.spec.containers[0].image'"busybox"阅读这篇文章《My jq Cheatsheet》(https://medium.com/geekculture/my-jq-cheatsheet-34054df5b650),了解